Digital TV, in addition to transmitting audio-visual multimedia services, also needs to transmit extra data to provide diverse services to users, such as, downloading applications to the receiver for execution to match the program contents. For example, during a baseball game broadcast, the user may download a baseball game to the receiver so that the user may watch the real game while playing the electronic game. The transmission of the electronic game requires extra transmission mechanism that must correctly transmit required data, such as, application program. This transmission mechanism is different from transmitting audio-visual data. Minor errors during the transmission of audiovisual data will not serious impair the decoding of the audio-visual data. On the other hand, a small error in the transmission of program files, regardless the size of the data, the receiver will not be able to correctly execute the application program.
To transmit and receive files and data correctly, broadcast network usually adopts the transmission mechanism, such as, Digital Storage Media, Command and Control (DSMCC). As shown in FIG. 1, the DSMCC transmission mechanism divides the file or data to be transmitted into a plurality of modules, M1, M2, . . . , MN. The modules are transmitted in the broadcast network in an object carousel manner. When the receiver starts to receive the data, the receiver does not know which module to start with because the starting time for receiving is not fixed. Therefore, the transmission mechanism uses the uni-direction cyclic manner of the object carousel to transmit the plural modules. After the receiver receives the plural modules M1, M2, . . . , MN correctly, the receiver reconstructs the file or data according to the header description of each module.
In this transmission mechanism, if an error occurs in receiving a certain module, the receiver must wait until the next transmission of the same module to ensure the correctness because it is impossible to request the retransmission of the module in a uni-direction broadcast network. Hence, the receiver needs more time to ensure the completeness and the correctness of the received data.
U.S. Pat. No. 7,418,651 disclosed a file download and streaming system. As shown in FIG. 2, in a broadcasting environment, a multi-stage encoding method is used to encode the sequential data IS(0), IS(1), IS(2), . . . , IS(k−1) of an input file or the stream into B(I0), B(I1), B(I2), . . . , before transmission.
Yuanyuan Ma et. al, disclosed in 2006 a fountain codes and applications to reliable wireless broadcast system. The technique is based on the fountain codes to provide a framework of flexible code rate to allow the concurrent reliable wireless broadcast and asynchronous data access. A shown in FIG. 3, in this framework, sequence ν′, after appending cyclic redundancy check (CRC) 310 after data sequence ν, is fountain encoded by a fountain encoder 320, and then the continuous symbol sequence is fragmented 330 to become a plurality of small segments for data transmission.